The present invention generally relates to data management, and more specifically, to the management of data transactions from I/O devices.
I/O devices are used in computer and mainframe systems for storing and transferring data. Mainframes and computing systems can process high volumes of I/O data and are configured to simultaneously support applications and I/O devices to service thousands of users. Direct memory access (DMA) can be used by various hardware including disk drive controllers, graphics cards, network cards, sound cards, etc. of computer systems to transfer data between devices with less CPU overhead. DMA can also be used in intra-chip data transfer in multi-core processors without occupying the CPU time.
When using DMA, the CPU first initiates the transfer, and then the CPU is made available to perform other operations while the initial transfer of data into the memory is in progress. This allows the CPU to perform other useful work or priority tasks while waiting for relatively slow I/O data transfers to be completed. This is also useful at any time the CPU cannot keep up with the rate of a data transfer. As the functionality and capacity of mainframes continue to grow, the management of the data, in particular I/O data, should be efficiently processed to limit any delays experienced by the system.